package com.shoulder.boot.ops.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.shoulder.boot.ops.dto.MachineAddDTO;
import com.shoulder.boot.ops.vo.MachineVo;
import com.shoulder.boot.ops.dto.MachineModDTO;
import com.shoulder.boot.ops.dto.MachineQueryDTO;
import com.shoulder.boot.ops.entity.Machine;
import com.shoulder.boot.ops.vo.SourceVo;
import com.shoulder.core.api.Kv;
import com.shoulder.core.fetch.BaseIds;

import java.util.List;

/**
 * 机器信息 服务类
 *
 * @author unKnown
 * @since 2025-03-30 16:16:55
 */
public interface MachineService extends IService<Machine> {

    MachineVo look(String id);

    List<MachineVo> looks(BaseIds<String> baseIds);

    void del(String id);

    void batchDel(BaseIds<String> baseIds);

    List<MachineVo> listQuery(MachineQueryDTO queryDTO);

    Page<MachineVo> pageQuery(MachineQueryDTO queryDTO);

    void mod(MachineModDTO modDTO);

    void add(MachineAddDTO addDTO);

    Machine noneScopeById(String id);

    SourceVo source(String id) throws Exception;
}
